function reverseList(head) {
    // 1.遍历链表,把链表里面的每个值都拿下来并缓存
    // (在这里我存的节点的值,而不是存整个节点,这样是可以节约内存的)
    let arr = []; //arr用于储存链表的节点的值
    let p = head; //p用于遍历链表
    while (p) {
      arr.push(p.value);
      p = p.next;
    }
    // 2.再次遍历列表,将数组里面的值倒序的赋值给每一个节点的value域就实现了链表的反转
    // (这里我并没有考虑新建一个链表,而是用了原来的链表,可以节约创建新链表的时间和内存)
    p = head;
    while (p) {
      p.value = arr.pop();
      p = p.next;
    }
    return head;
  }
